5
תגובות
אני מעוניין לשלוף מהמסד שורה מסויימת, הידועה לי מראש, לפני שאר השורות, למשל, אני רוצה לשלוף את השורה בעלת הID מספר 5, לפני שאר השורות, לאחר מכן הסדר לא משנה לי / יסודר לפי ID. יש למישהו מושג? תודה מראש.
ניסיתי את
ללא הצלחה.
ניסיתי את
SELECT `dn`, `id` FROM `gallerydir` ORDER BY CASE `id` WHEN '{$r['dirid']}' THEN 0 ELSE 1 END, `id`
ללא הצלחה.
5 תשובות
יכול להיות שיותר מהר יעבוד משהו כזה:
select * from tbl where id = 5
union
select * from tbl where id != 5
union
select * from tbl where id != 5
הקוד שלך היה אמור להיראות ככה:
select *, (case id when 5 then 1 else 0 end) as myrow
from Table1
order by myrow desc
from Table1
order by myrow desc
אבל זה הרבה עבודה בשביל המסד (ליצור טבלה זמנית בזיכרון ואחר כך למיין אותה)
אוקיי, משהו מוזר:
ניסיתי את שתי השורות שנתת לי, וזה לא עבד, מדובר בשורה שמדפיסה ערכים לתוך תיבת SELECT, בתוך תג OPTION.
לאחר בדיקה הקודים אכן עובדים באופן הרצוי, אבל משום מה, בתוך תיבת הSELECT הם מופיעים לפי סדר המספרים שכתוב בVALUE. יש לך מושג?